Method and device for creating a  fucntion model for a control unit of an engine system

ABSTRACT

A computerized method for creating a function model based on a non-parametric, data-based model, e.g., a Gaussian process model, includes: providing training data including measuring points having one or multiple input variables, the measuring points each being assigned an output value of an output variable; providing a basic function; modifying the training data with the aid of difference formation between the function values of the basic function and the output values at the measuring points of the training data; creating the data-based model based on the modified training data; and providing the function model as a function of the data-based model and the basic function.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a method and devices for creatingfunction models for control units, in particular for engine systems inmotor vehicles.

2. Description of the Related Art

In order to create a function model for emulating route and systemfunctions in a control unit for an engine system, a task for anapplication engineer is in particular to make available reliablefunction values, which correspond to the predefined requirements or toprobable courses, for input variables outside of the measured valuerange.

In order to implement function models, data-based, non-parametricmodels, such as Gaussian process models, may be provided which may beused to display complex relationships. However, Gaussian process models,in particular, have the disadvantage that their function values outsideof the value range of input variables, which are supported by trainingdata, have the tendency toward a predefined mean-value function, e.g.,constant zero. Under certain circumstances, this may contradict theempirical values of the application engineer who, for example, presumesa certain course of the function values in a value range outside of themeasuring points of the training data and would like to have this courseto be taken into account in the function model.

BRIEF SUMMARY OF THE INVENTION

According to the present invention, a method for creating a functionmodel based on a non-parametric, data-based model, as well as acorresponding device and a computer program are provided.

According to a first aspect, a method for creating a function modelbased on a non-parametric, data-based model is provided which includesthe following steps:

-   -   providing training data including measuring points having one or        multiple input variables, the measuring points each being        assigned an output value of an output variable;    -   providing a basic function;    -   modifying the training data with the aid of difference formation        between the function values of the basic function and the output        values at the measuring points of the training data;    -   creating the data-based model based on the modified training        data; and    -   providing the function model as a function of the data-based        model and the basic function.

One purpose of the above-described method for creating a function modelbased on a non-parametric, data-based model is to provide an applicationengineer with the possibility to also control the function values of anon-parametric, data-based model outside of the value range in which themeasuring points of the training data are located. By predefining thebasic function, it may be achieved, for example, that the function modelconverges in the extrapolation range against the predefined basicfunction. Furthermore, it may be necessary to incorporate users'knowledge directly into the function model, if, for example, it is notpossible to completely measure the relevant value range of the inputvariables.

In contrast to modeling of function models with the aid ofcharacteristic maps and characteristic curves, it is difficult toinfluence the model behavior in the case of modeling non-parametricfunction models by manipulating the parameters suitably or intuitively.Previously known manipulations in particular include adding moremeasuring points to the function model and retraining the function modelbased on the expanded training data. In particular, if the addedmeasuring points are close to the already present measuring points, theadded measuring points may, however, have only little weighting power sothat they cannot have an essential influence on the model behavior. Ifthe added measuring points are not located in the original measuringrange, they have an influence on the model behavior, but it is notpossible to thereby define the extrapolation behavior in a satisfactorymanner. Furthermore, adding measuring points results in a largercovariance matrix.

A constant mean value function, in particular of constant zero, whichcorresponds to the mean value of the function values of the functionmodel is assumed as standard in Gaussian process models. For thisreason, the function values of the Gaussian process model go back to themean value of the function values of the training data outside of theranges of the measuring points of the training data, i.e., in theextrapolation range. This behavior is, however, not desired in someapplications, in particular if, from the course of the function of thefunction model, a clear trend already emerges with regard to which itmay be assumed that it also applies outside of the measured inputvariable space.

According to the method mentioned above, a basic function is predefinedin this case which predefines the course in the extrapolation range ofthe training data. The training data are adjusted by subtracting thecorresponding function value of the basic function from the functionvalues at the measuring points and by carrying out a correspondingmodeling of the data-based model based on the modified training data.The result of conflating the basic function with the data-based modelwhich was created from the modified training data is the (approximately)desired model which is based on the original training data, theextrapolation range being predefined by the basic function. In this way,extrapolation ranges of data-based models may be defined in almost anydesirable manner.

The method mentioned above therefore provides a possibility ofreapplying data-based models as well as of better controlling theextrapolation range of such function models.

Alternatively or additionally, it is possible to define a validityrange, thus making it possible to applicatively establish for each inputvariable in which range the function model was created and is thusvalid. In particular, the validity range may be predefined, the functionvalues being determined with the aid of the function model within thevalidity range and with the aid of the basic function or anotherpredefined, in particular constant function, outside of the validityrange.

Furthermore, the validity range may be ascertained as a bounding boxfrom the training data, the bounding box defining an input variablespace with axis-parallel edges and all measuring points of the trainingdata being located within this space.

In particular, a bounding box may be ascertained from the training datafor this purpose, the bounding box defining an input variable space withaxis-parallel edges and all measuring points of the training data beinglocated within this space, the function values being determined with theaid of the function model within the bounding box and with the aid ofthe basic function or another predefined function outside of thebounding box.

In particular, the basic function may be predefined as a linear orconstant function and in particular as a parametric model, anon-parametric model, or a physical model.

According to one specific embodiment, the basic function may bepredefined as a D-dimensional hyperplane or it may be defined bypredefining target values at target value points, the basic functionbeing defined by a number D+1 target values for a number of D inputvariables, the basic function corresponding to a mean value functionwhich results from the multi-linear interpolation between the targetvariables.

It may be provided that the other predefined function corresponds to aconstant function f(x)=f(min(x_(max), max(x_(min), x))) for a measuringpoint x, the operators “max” and “min” being used dimensionally andvectors x_(max) and x_(min) including the upper and lower margins of theinput variable space for each input variable.

According to another aspect, a device, in particular an arithmetic unit,for creating a function model based on a non-parametric, data-basedmodel is provided, the device being designed to:

-   -   provide training data including measuring points having one or        multiple input variables, the measuring points each being        assigned an output value of an output variable;    -   provide a basic function;    -   modify the training data with the aid of difference formation        between the function values of the basic function and the output        values at the measuring points of the training data;    -   create the data-based model based on the modified training data;        and    -   provide the function model as a function of the data-based model        and the basic function.

Alternatively or additionally, it is possible that the device isdesigned to provide for determining the function values using a validityrange, which is established applicatively for each input variable, withthe aid of the function model within the validity range and with the aidof the basic function or another predefined, in particular constantfunction, outside of the validity range.

According to another aspect, a computer program is provided which isdesigned to carry out all steps of the method mentioned above.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a flow chart to illustrate the method for creating afunction model based on a non-parametric, data-based model havingdefined extrapolation ranges.

FIG. 2 shows a basic function for a function model having two inputvariables.

FIG. 3 shows an illustration of a data-based model which was created onthe basis of modified training data.

FIG. 4 shows an example of a basic function within a bounding box.

DETAILED DESCRIPTION OF THE INVENTION

The method for creating a function model based on a non-parametric,data-based model is described in the following in conjunction with theflow chart of FIG. 1.

In step S1, the starting point is providing measuring points of thetraining data together with the associated output values of an outputvariable. The measuring points may be ascertained by going throughdifferent operating points of a physical system to be measured, e.g., anengine system having an internal combustion engine. The correspondingoutput values of the resulting output variable are assigned to themeasuring points.

Furthermore, in step S2, a basic function is defined which defines afunction value course outside of the function value range described bythe training data. This basic function may correspond to a linear,constant, or another type of function course. In particular, the basicfunction may predefine constant courses outside of the function valuerange described by the training data. The basic function may bepredefined by a user, e.g., an application engineer. For example, thebasic function of a function may correspond to a linear interpolationthrough the training data or it may correspond to a predefinedparametric, non-parametric, or physical model.

In a simple case of a basic function, it is assumed that the basicfunction is described by a simple linear correlation. In the case of Dinput dimensions, the basic function is a hyperplane which isrepresented by the following equation

a ₁ x ₁ +a ₂ x ₂ + . . . +a _(D) x _(D) =a ₀

Parameters a₀, a₁, a₂, . . . , a_(D) of this function may be predefineddirectly or determined indirectly. In order to determine parameters a₀,a₁, a₂, . . . , a_(D) of this function, an application engineerinitially specifies, for example, D+1 target values using which D+1parameters of the planes of the plane equation mentioned above arecomputed by solving the associated linear system of equations. Thesetarget values may, for example, be indicated for D+1 end points of anaxis-parallel bounding box (a space which includes all input values ofthe input variables) of the training data. The bounding box defines thevalid value ranges of D input variables, which define an input variablespace within which all measuring points of the training data arelocated. This is illustrated in FIG. 2, for example, on a case of twoinput variables.

In step S3, the application engineer may initially be asked for thesetpoint values for all corner points of the axis-parallel bounding boxaround the input variable space to establish the procedure. In the caseof D input dimensions, i.e., D input variables, 2^(D) target values mustthus be specified. The basic function subsequently results from themulti-linear interpolation mentioned above between the target values.Alternatively, the hyperplane may also be adjusted to the measured datapoints.

Now, modified training data are generated in step S3 in the case ofwhich the function values of the previously provided basic function atthe corresponding measuring point are subtracted from the output valuesat the measuring points of the provided training data in order to obtainthe output values of the training data which were modified at themeasuring points.

In step S4, a non-parametric, data-based model, in particular a Gaussianprocess model, is created at the corresponding measuring points on thebasis of the modified output values of the training data. The data-basedmodel describes the deviations of the original output values from thepreviously predefined basic function.

The utilization of non-parametric, data-based function models is basedon a Bayesian regression process. The Bayesian regression is adata-based process which is based on a model. To create the model,measuring points of training data as well as the associated output dataof an output variable are needed. The model is created by using nodedata which correspond entirely or partially to the training data orwhich are generated therefrom. Furthermore, abstract hyperparameters aredetermined which parametrize the space of the model functions andeffectively weigh the influence of the individual measuring points ofthe training data with regard to the later model prediction.

The abstract hyperparameters are determined with the aid of anoptimization process. One option of such an optimization process isoptimizing a marginal likelihood p(Y|H,X). Marginal likelihood p(Y|H,X)describes the plausibility of measured y values of the training datawhich are illustrated as vector Y with model parameters H and x valuesof the training data. During model training, p(Y|H,X) is maximized bysearching for suitable hyperparameters with the aid of which data may beexplained particularly well.

The optimization process automatically ensures in this case a trade-offbetween the model complexity and the display accuracy of the model.Although an arbitrarily high display accuracy of the training data maybe achieved with increasing model complexity, this may, however, resultat the same time in an overfitting of the model to the training data andthus in a worse generalization property.

By creating the non-parametric, data-based function model, the followingis obtained:

${v = {\sum\limits_{i = 1}^{N}{\left( Q_{y} \right)\sigma_{f}{\exp \left( {{- \frac{1}{2}}{\sum\limits_{d = 1}^{D}\frac{\left( {\left( x_{i} \right)_{d} - u_{d}} \right)}{l_{d}}}} \right)}}}},$

wherein v corresponds to the model value at a testing point u, x_(i)corresponds to a measuring point of the training data, N corresponds tothe number of the measuring points of the training data, D correspondsto the dimension of the input data space/training data space, and l_(d)and σ_(f) correspond to the hyperparameters from the model training.Q_(y) is a variable which was computed from the hyperparameters and themeasuring data.

Conflating the basic function and the data-based model results in stepS5 in the function model having the extrapolation range which ispredefined by the basic function.

FIG. 3 shows the function of the data-based model which was createdaccording to the modified training data having two input variables. Theentire function model to be displayed results from the combination,i.e., additive application, of the basic function (FIG. 2) and thefunction of the data-based model (FIG. 3).

FIG. 4 shows an example of a basic function within a bounding box(described by the corner points [0,0], [1,0], [0,1], [1,1]) in which theapplication engineer has specified 2²=4 target values y₁, y₂, y₃, y₄ forthe corner points. Naturally, other points, e.g., a point y₅, may alsobe used to determine the basic function within the bounding box. Thepseudocode below indicates how the interpolation value may be obtainedfor arbitrary input dimensions D.

% Input variables

% corners: (2̂D)×D matrix of the corner points of the user-specific(axis-parallel) bounding box; D corresponds to the number of dimensions

% targets: (2̂D)×1 vector of the user-specific target variables (at the2̂D edges)

% point: 1×D vector, the testing point to be evaluated

% output variables

% val: interpolation value for the input value (scalar)

Xmins=min(corners, [ ], 1); % 1×D vector having a minimum of the cornersof the bounding box (one per dimension)

Xmax=max(corners, [ ], 1); % 1×D vector having a maximum of the cornersof the bounding box (one per dimension)

lengths=xmaxs−xmins; % 1×D vector of the side length of the bounding box

fractions=(point−xmins)/lengths; % 1×D vector of the weightings

% position computation of the matrix of the size (2̂D)×D

positions (i,j)=1

if corners (i,j)==xmins(j) and positions (i,j)=2 elsepositions=zeros(size(corners));

for i=1: size(positions, 1)

positions(i,:)=corners(i, :)==xmaxs;

end

positions=positions+1;

% generate product for obtaining the weighting vector: if positionsequals 1, (1-fraction) is used as weighting and if positions equals 2,“fraction” is used as weighting. The weighting factor is then multipliedby the target values. This is carried out for all edges of the boundingbox and all dimensions

val=0;

% across all edges

for c=l:C

factors=1;

% across all dimensions

for d=l:D

factors=factors*((positions(c, d)==1)*(1−fractions(d))+(positions(c,d)==2)*(fractions(d)));

end

val=val+factors*targets(c);

end

To ensure that the model is constantly continued starting from themargins of the validity range, whose margins may be predefined ordescribed by an axis-parallel bounding box, for example, the modelprediction of the data-based model may be adjusted as follows:

f(x)=f({tilde over (x)})=f(min(x _(max),max(x _(min) ,x))).

Here, the operators max and min are to be used dimensionally, andD-dimensional vectors x_(max) and x_(min) contain for each dimension theupper/lower margins of the validity range. This means that if an inputvalue is outside of the validity range of the model and therefore in theextrapolation range, that function value for the predicted measuringpoint is retrieved which is located directly on the margin between themodel range and the extrapolation range. Where it holds:

${\overset{\sim}{x}}_{d} = \left\{ \begin{matrix}{x_{d},{x_{\min,d} < x_{d} < x_{\max,d}}} \\{x_{\min,d},{x_{d} < x_{\min,d}}} \\{x_{\max,d},{x_{d} > x_{\max,d}}}\end{matrix} \right.$

This ensures a constant continuation of the Gaussian process model inthe extrapolation range. At the margins between the model range and theextrapolation range, the function is typically not differentiable, jumpsbeing avoided, however.

What is claimed is:
 1. A computerized method for generating a functionmodel based on a non-parametric, data-based model, comprising: providingtraining data including measuring points having at least one inputvariable, the measuring points each being assigned an output value of anoutput variable; providing a basic function; modifying the training datawith the aid of difference formation between the function values of thebasic function and the output values at the measuring points of thetraining data; generating the data-based model based on the modifiedtraining data; and generating the function model as a function of thedata-based model and the basic function.
 2. The method as recited inclaim 1, wherein a validity range is predefined, the function valuesbeing determined with the aid of the function model within the validityrange and with the aid of one of the basic function or anotherpredefined, constant function outside of the validity range.
 3. Themethod as recited in claim 2, wherein the validity range is ascertainedas a bounding box from the training data, the bounding box defining aninput variable space with axis-parallel edges, and all measuring pointsof the training data being located within the bounding box.
 4. Themethod as recited in claim 3, wherein the basic function is predefinedas (i) one of a linear or constant function and (ii) one of a parametricmodel, a non-parametric model, or a physical model.
 5. The method asrecited in claim 3, wherein the basic function is one of (i) predefinedas a D-dimensional hyperplane, or (ii) defined by predefining targetvalues at target value points, the basic function being defined by anumber D+1 target values for a number of D input variables, the basicfunction corresponding to a mean value function which results from amulti-linear interpolation between the target variables.
 6. The methodas recited in claim 3, wherein the another predefined functioncorresponds to a constant function f(x)=f(min(x_(max), max(x_(min),x)))for a measuring point x, the operators “max” and “min” being useddimensionally and the vectors x_(max) and x_(min) including the upperand lower margins of the input variable space for each input variable.7. A computing device for generating a function model based on anon-parametric, data-based model, the computing device comprising: aprocessor configured to: provide training data including measuringpoints having at least one input variable, the measuring points eachbeing assigned an output value of an output variable; provide a basicfunction; modify the training data with the aid of difference formationbetween the function values of the basic function and the output valuesat the measuring points of the training data; generate the data-basedmodel based on the modified training data; and generate the functionmodel as a function of the data-based model and the basic function.
 8. Anon-transitory, computer-readable data storage medium storing a computerprogram having program codes which, when executed on a computer,performs a method for generating a function model based on anon-parametric, data-based model, the method comprising: providingtraining data including measuring points having at least one inputvariable, the measuring points each being assigned an output value of anoutput variable; providing a basic function; modifying the training datawith the aid of difference formation between the function values of thebasic function and the output values at the measuring points of thetraining data; generating the data-based model based on the modifiedtraining data; and generating the function model as a function of thedata-based model and the basic function.